package com.ruoyi.zsyh.service.impl;

import java.util.List;
import java.util.Map;

import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.zsyh.mapper.ZsyhAgentAreaMapper;
import com.ruoyi.zsyh.domain.ZsyhAgentArea;
import com.ruoyi.zsyh.service.IZsyhAgentAreaService;
import com.ruoyi.common.core.text.Convert;

/**
 * 大区会长管辖区域Service业务层处理
 * 
 * @author yuexl
 * @date 2021-12-10
 */
@Service
public class ZsyhAgentAreaServiceImpl implements IZsyhAgentAreaService 
{
    @Autowired
    private ZsyhAgentAreaMapper zsyhAgentAreaMapper;

    /**
     * 查询大区会长管辖区域
     * 
     * @param id 大区会长管辖区域ID
     * @return 大区会长管辖区域
     */
    @Override
    public ZsyhAgentArea selectZsyhAgentAreaById(String id)
    {
        return zsyhAgentAreaMapper.selectZsyhAgentAreaById(id);
    }

    /**
     * 查询大区会长管辖区域列表
     * 
     * @param zsyhAgentArea 大区会长管辖区域
     * @return 大区会长管辖区域
     */
    @Override
    public List<ZsyhAgentArea> selectZsyhAgentAreaList(ZsyhAgentArea zsyhAgentArea)
    {
        return zsyhAgentAreaMapper.selectZsyhAgentAreaList(zsyhAgentArea);
    }

    /**
     * 新增大区会长管辖区域
     * 
     * @param zsyhAgentArea 大区会长管辖区域
     * @return 结果
     */
    @Override
    public int insertZsyhAgentArea(ZsyhAgentArea zsyhAgentArea)
    {
        zsyhAgentArea.setCreateTime(DateUtils.getNowDate());
        return zsyhAgentAreaMapper.insertZsyhAgentArea(zsyhAgentArea);
    }

    /**
     * 修改大区会长管辖区域
     * 
     * @param zsyhAgentArea 大区会长管辖区域
     * @return 结果
     */
    @Override
    public int updateZsyhAgentArea(ZsyhAgentArea zsyhAgentArea)
    {
        zsyhAgentArea.setUpdateTime(DateUtils.getNowDate());
        return zsyhAgentAreaMapper.updateZsyhAgentArea(zsyhAgentArea);
    }

    /**
     * 删除大区会长管辖区域对象
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    @Override
    public int deleteZsyhAgentAreaByIds(String ids)
    {
        return zsyhAgentAreaMapper.deleteZsyhAgentAreaByIds(Convert.toStrArray(ids));
    }

    /**
     * 删除大区会长管辖区域信息
     * 
     * @param id 大区会长管辖区域ID
     * @return 结果
     */
    @Override
    public int deleteZsyhAgentAreaById(String id)
    {
        return zsyhAgentAreaMapper.deleteZsyhAgentAreaById(id);
    }

    /**
     * 查询管辖省份
     * @param agentId 管理商id
     * @return
     */
    public List<Map> getProvinceByAgentId(String agentId){
        return zsyhAgentAreaMapper.getProvinceByAgentId(agentId);
    }

    /**
     * 查询管辖市
     * @param agentId 管理商id
     * @param pId 上级id
     * @return
     */
    public List<Map> getCityByAgentId(String agentId, String pId){
        return zsyhAgentAreaMapper.getCityByAgentId(agentId, pId);
    }

    /**
     * 查询区县
     * @param agentId 管理商id
     * @param pId 上级id
     * @param all 是否查询所有区域 0否 1是
     * @return
     */
    public List<Map> getAreaByAgentId(String agentId, String pId, String all){
        return zsyhAgentAreaMapper.getAreaByAgentId(agentId, pId, all);
    }
}
